namespace HD.Model
{
    using System;
    using System.Collections.Generic;
    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel.DataAnnotations.Schema;

    
    public class Employee
    {
        [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
        public int  Id { get; set; }
        [Required(ErrorMessageResourceName = "EmployeeNameRequiredMessage", ErrorMessageResourceType = typeof(Resource))]
        [MaxLength(20, ErrorMessageResourceName = "EmployeeNameMaxMessage", ErrorMessageResourceType = typeof(Resource))]
        public string Name { get; set; }
        public string Gender { get; set; }
        public string Description { get; set; }
        [Required(ErrorMessageResourceName = "EmployeeHappyIndexRequiredMessage", ErrorMessageResourceType = typeof(Resource))]
        public HappyIndex HappinessIndex { get; set; }
        public string Picture { get; set; }
        public Nullable<System.DateTime> BirthDay { get; set; }
        [Required(ErrorMessageResourceName = "EmployeePasswordRequiredMessage", ErrorMessageResourceType = typeof(Resource))]
        [StringLength(20, MinimumLength = 6, ErrorMessageResourceName = "EmployeePasswordMinMessage", ErrorMessageResourceType = typeof(Resource))]

        public virtual ICollection<News> News { get; set; }
        public virtual ICollection<Department> Departments { get; set; }
        public virtual ICollection<TaskInitiation> Tasks { get; set; }
        public virtual ICollection<Follow> Follows { get; set; }

    }
}
